In modern telephony networks, media switching and call control functionality are separated. Call control, which includes setting up and tearing down calls and maintaining call state machines, is performed by a network entity referred to as a media gateway controller (MGC). Media stream switching, which includes switching media packets between input and output ports and converting the media packets into the appropriate formats for the sending and receiving parties, is performed by a media gateway (MG). Media gateway controllers communicate call control information to media gateways via a media gateway control protocol. Typical media gateway control protocols, such as MGCP and MEGACO, include commands for communicating information about each endpoint of a session to the media gateway and instructing the media gateway as to how to process packets to be delivered to each endpoint.
FIG. 1 is a schematic diagram illustrating voice sessions between media gateways 100, 102, 104, and 106 interconnected through an IP network 108. Media gateways 100, 102, 104, and 106 may be connected through IP network 108 via multiple paths through a series of next-hop routers. Multiple bidirectional voice sessions may be set up between any two or more of media gateways 100, 102, 104, and 106. As voice packets are received at a media gateway (ingress packets) or exit the media gateway (egress packets), the particular session that a packet belongs to is identified for proper delivery and/or processing of the packet. The terms “session” and “call” are used interchangeably herein.
FIG. 2 is a schematic diagram illustrating an exemplary media gateway 200. Referring to FIG. 2, media gateway 200 includes a control manager 202, a resource manager 204, a packet switch fabric 206, voice servers 208, and network interfaces 210. Each voice server 208 contains voice processing resources for processing VoIP and TDM voice streams. For example, each voice server 208 may include codecs, VoIP, ATM, and TDM chips, and digital signal processing resources for processing VoIP streams. A detailed description of exemplary resources that may be found in voice server 208 can be found in commonly assigned, co-pending U.S. patent application Ser. No. 10/676,233, the disclosure of which is incorporated herein by reference in its entirety.
Control manager 202 of media gateway 200 controls the overall operation of media gateway 200 and communicates with media gateway controller 212 to set up and tear down calls. Resource manager 204 of control manager 202 allocates new voice sessions to incoming calls. For example, resource manager 204 may assign one of voice servers 208 to a session. Voice servers 208 are each assigned individual IP addresses and are each reachable through packet switch fabric 206 via any of network interfaces 210. Multiple sessions may be processed by the same voice server 208. Furthermore, multiple sessions may be established between a given network interface 210 and a given voice server 208 through the packet switch fabric 206. The traffic rate on a given interface 210 should not exceed the maximum available bandwidth to avoid degrading the voice quality of calls. In order to maintain an expected quality of service (QoS) for existing calls and to provide a suitable QoS for newly admitted calls in media gateway 200, call admission control (CAC) is employed. Call admission control considers criteria, such as available bandwidth, to determine whether or not a new voice call should be accepted.
One problem with conventional call admission control techniques is that they do not accurately determine available bandwidth. For example, some conventional call admission control techniques allocate a peak bandwidth that the call will require to each new call, as determined during call setup, and this peak bandwidth is subtracted from the available bandwidth. This is partly due to the fact that the impact on available bandwidth of voice encoding techniques that are commonly used in VoIP transmissions, such as compression and silence suppression technologies, is difficult to determine and may result in a non-deterministic traffic rate for each call. Accurately determining the traffic rate at the media gateway is important to achieve better bandwidth utilization while maintaining an expected quality of service for calls handled by the media gateway.
Accordingly, a need exists for measurement-based call admission control in a media gateway.